Zooming factor computation

ABSTRACT

Systems, methods, and devices are disclosed for determining a zooming factor for a camera in a pan, tilt, and zoom (PTZ) camera tracking system to enable a camera to keep an object at a constant size within the camera&#39;s viewing area, despite changes in the object&#39;s distance from the camera. This provides a complement to a camera&#39;s pan and tilt tracking of the moving object. For example, a PTZ camera tracking system that determines an object to track, utilizes information regarding images of the object of interest are used to determine a zooming factor (or other zooming value) for a camera in the PTZ camera tracking system. This information includes variables such as tilt angles of one or more cameras and a reference zooming factor.

BACKGROUND

Surveillance systems are often used to monitor activity of a securearea. For instance, video cameras and other devices can provide visual,audio, movement, heat and other information that can allow a securityguard to determine whether a secure area is being breached. Thesesystems can be partially or wholly automated to provide efficientmonitoring of the secure area.

Modern processors and other computing devices have the processing powerto automate the tracking of a moving object within a camera's viewingarea. These systems run algorithms to determine that an object is movingand adjust the pan and tilt of a camera to try to ensure that the objectdoes not leave the camera's viewing area. As the distance of the objectto the camera changes, the zooming factor of the camera can be adjusted.

SUMMARY

An example of a method of computing a zooming factor includes receivingfirst image information, from the image source, of a first image of anobject of interest. The first image information corresponds to a firsttilt angle of the image source. The method further includes receivingsecond image information, from the image source, of a second image ofthe object of interest. The second image information is indicative of asecond tilt angle of the image source. The method also includesdetermining a first zooming value corresponding to the first image andcalculating a second zooming value using the first tilt angle, the firstzooming value, and the second tilt angle. Finally, the method includessending zooming information, indicative of the second zooming value, tothe image source.

Implementations of such a method may include one or more of thefollowing features. Capturing the first image with a first camera of theimage source using the first tilt angle while the object of interest isat a particular position; and capturing the second image with a secondcamera, separate from the first camera, of the image source using thesecond tilt angle while the object of interest is at substantially theparticular position. Calculating the second zooming value further usingat least one of a height of the first camera relative to the ground, ora height of the second camera relative to the ground. Controllingtracking of the object of interest by the second camera. Determining thefirst zooming value is based, at least in part, on a size of the objectof interest relative to the viewing area of the first camera.Determining the first zooming value based, at least in part, on a largerof a height and a width of the portion of the viewing area of the firstcamera occupied by the object of interest. Where the image sourcecomprises a camera, the method further comprises capturing the firstimage while the object of interest is at a first distance from thecamera; and capturing the second image while the object of interest isat a second distance from the camera. Producing and sending the firstimage information and the second image information from a processorphysically located within a housing of the camera. Determining the firstzooming value based, at least in part, on a size of the object ofinterest relative to a viewing area of the camera. Determining at leastone of the first tilt angle or the second tilt angle.

An example of a non-transitory machine-readable storage medium accordingto the disclosure includes instructions embodied thereon that, whenexecuted by at least one machine, cause the at least one machine todetermine, from first image information provided by an image source, afirst zooming value corresponding to a first image of an object ofinterest where the first image information corresponds to a first tiltangle of the image source; determine, from second image informationprovided by the image source, a second tilt angle corresponding to asecond image of an object of interest; calculate a second zooming valueby using the first tilt angle, the first zooming value, and the secondtilt angle; and send zooming information indicative of the secondzooming value toward the image source.

Implementations of such a method may include one or more of thefollowing features. The instructions that cause the at least one machineto calculate the second zooming value cause the at least one machine touse at least one of: a height of a first camera relative to the ground,or a height of a second camera relative to the ground. The instructions,when executed by the at least one machine, cause the at least onemachine to control tracking of the object of interest by the secondcamera. The first zooming value is based, at least in part, on a size ofthe object of interest relative to the viewing area of the first camera.The first zooming value is based, at least in part, on a size of theobject of interest relative to a viewing area of a camera. Theinstructions, when executed by the at least one machine, further causethe at least one machine to determine at least one of the first tiltangle or the second tilt angle.

An example of a system for calculating a zooming factor according to thedisclosure includes a first camera having a first tilt angle and aviewing area, the first tilt angle being fixed. The first camera isconfigured to capture a first image of an object of interest while theobject of interest is at a particular position; and output dataregarding the first image. The system also comprises a second camerahaving an adjustable tilt angle enabling the second camera to track theobject of interest. The second camera is configured to capture, using asecond tilt angle, a second image of the object of interest while theobject of interest is at substantially the particular position; andoutput data regarding the second tilt angle. The system furthercomprises a processor communicatively coupled with the first camera andthe second camera. The processor is configured to determine a firstzooming value for the first camera; calculate a second zooming valueusing the first tilt angle, the first zooming value, and the second tiltangle; and send information to cause a zooming value of the secondcamera to change according to the second zooming value.

Implementations of such a system may include one or more of thefollowing features. The processor is configured to determine the firstzooming value based, at least in part, on a portion of the viewing areaof the first camera occupied by the object of interest. The processor isconfigured to determine the first zooming value based, at least in part,on a larger of a height and a width of the portion of the viewing areaof the first camera occupied by the object of interest. The processor islocated within a housing of the first camera or the second camera. Theprocessor is further configured to control the tracking of the object ofinterest by the second camera. The processor is configured to calculatethe second zooming value using at least one of a height of the firstcamera relative to the ground, or a height of the second camera relativeto the ground.

An example of another system for calculating a zooming factor accordingto the disclosure includes a camera having an adjustable tilt angle andbeing configured to track an object of interest, the camera beingfurther configured to capture a first image of the object of interest,with the camera set to a first tilt angle and a first zooming value;change a tilt angle of the camera from the first tilt angle to a secondtilt angle in response to a change in the distance of the object ofinterest to the camera; capture a second image of the object ofinterest, with the camera set to the second tilt angle; and provideindications of the first tilt angle, the first zooming value, and thesecond tilt angle. The system further comprises a processor,communicatively coupled to the camera, configured to calculate a secondzooming value using the first tilt angle, the first zooming value, andthe second tilt angle; and send information to the camera to cause thezooming value of the camera to change from the first zooming value tothe second zooming value.

Implementations of such a system may include one or more of thefollowing features. The first zooming value is based, at least in part,on a portion of the viewing area of the first camera occupied by theobject of interest. The processor is located within a housing of thecamera. The processor is further configured to control the tracking ofthe object of interest by the camera.

Items and/or techniques described herein may provide one or more of thefollowing capabilities, as well as other capabilities not mentioned.Automatic zoom control can be provided for a pan, tilt, and zoom (PTZ)camera with little processing power. Zoom control of a PTZ camera can beintegrated with manual and/or automatic PTZ camera tracking Zoom controlfor multi-camera video systems can be provided. These capabilities canincrease efficiency of the systems controlling the PTZ zooming.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of a video surveillance system utilizing amaster camera and a slave camera.

FIG. 2 is a block diagram of the video surveillance system of FIG. 1.

FIG. 3 is a block diagram of a camera including a computing unit withpan, tilt, and zoom control units.

FIG. 4A is a simplified perspective view of the video surveillancesystem of FIG. 1 and its corresponding geometry.

FIG. 4B is an illustration of an image seen by the master camera of FIG.1, with corresponding geometry.

FIG. 5 is a block flow diagram of a method for determining a zoom factorfor the slave camera in the video surveillance system of FIG. 1.

FIG. 6 is a block diagram of a video surveillance system utilizing asingle pan, tilt, and zoom (PTZ) camera.

FIG. 7 is a simplified side view of the video surveillance system ofFIG. 6 and its corresponding geometry.

FIG. 8 is a block flow diagram of a method for determining a zoom factorfor the PTZ camera in the video surveillance system of FIG. 6.

DETAILED DESCRIPTION

Techniques are discussed herein for determining a zooming factor for acamera in a pan, tilt, and zoom (PTZ) camera tracking system to enable acamera to keep an object at a substantially constant size within thecamera's viewing area, despite changes in the object's distance from thecamera. This provides a complement to a camera's pan and tilt trackingof the moving object. For example, a PTZ camera tracking system thatdetermines an object to track (hereinafter called the “object ofinterest”), utilizes information regarding images of the object ofinterest to determine a zooming factor (or other zooming value) for acamera in the PTZ camera tracking system. The information used includesvariables such as tilt angles of one or more cameras and a referencezooming factor.

The variables used to determine a zooming factor can be obtained indifferent ways. For example, a master camera and a slave camera can beused in which the master camera provides a first tilt angle andreference zooming factor. The first tilt angle of the master camera isfixed, but the reference zooming factor can be determined from imagescaptured by the master camera. The slave camera, on the other hand,tracks an object of interest and has a variable tilt angle that changesas the distance of the object of interest from the slave camera changes.The tilt angles and reference zooming factor are determined while theobject of interest is at a certain position. This typically entailsdetermining these variables at a given moment in time.

Another example uses a single camera that tracks an object of interest.Tilt angles and a reference zooming factor are determined at differentmoments in time. A first zooming factor and a first tilt angle of thecamera while the object of interest is at a first distance from thecamera are used to determine a second zooming factor for a second tiltangle while the object of interest is at a second distance from thecamera.

The terms “zooming factor” and “zooming value” are used genericallyherein and do not limit the scope of this disclosure. Numerous valuescan be used for the “zooming factor” or “zooming value” including valuesinversely proportional to the zoom, such as a focal length. Ultimately,any appropriate value that can be used as an indicator of the zoom levelof a camera can be used with appropriate modification to the equationsdetailed herein.

FIG. 1 illustrates of a surveillance system 100-1 utilizing a mastercamera 120 and a slave camera 140. The master camera 120 can compriseany of a variety of cameras, including fixed and adjustable cameras. Forexample, a PTZ camera, such as the Spectra® HD, by Pelco® of Clovis,Calif., can be a suitable master camera 120. The master camera 120 islocated at a known height and provides a fixed viewing area 130 thatallows the master camera to easily detect an object of interest 110 byutilizing a background subtraction-based algorithm. The location of theobject of interest 110 obtained from the master camera 120 is translatedinto pan and tilt angles, as well as a zooming factor, for the slavecamera 140.

The slave camera 140 is also located at a known height, which may differfrom the height of the master camera 120, and can vary, depending on thedesired functionality of the surveillance system 100-1. The slave camera140 is a PTZ camera, and as the object of interest 110 moves, the slavecamera 140 tracks the movement of the object of interest 110 byadjusting the tilt and pan angles accordingly, keeping the object ofinterest 110 within the slave camera's viewing area 150. The zoomingfactor of the slave camera 140 is adjusted, as detailed herein, using areference zooming factor of the master camera 120 and tilt angles ofboth the master camera 120 and the slave camera 140.

The reference zooming factor is determined based on the size of theobject of interest 110 as it appears in the master camera's viewing area130. For example, information from the master camera 120 and/or theslave camera 140 can be used to adjust the zoom of the camera 140 suchthat the object of interest 110 initially occupies about 80% of theslave camera's viewing area 150 (i.e., 80% of an image/screen providedby the slave camera 140). Thereafter, when the object of interest 110moves and the slave camera pans and/or tilts to ensure the object ofinterest 110 remains in the slave camera's viewing area 150, the zoomingfactor of the slave camera 140 is computed and subsequently adjustedsuch that the object of interest 110 continues to occupy about 80% ofthe slave camera's viewing area 150. The object of interest 110 couldinitially occupy a greater or lesser portion of the slave camera'sviewing area 150, such as 90% or more, or 50% or less, depending ondesired functionality. Additionally or alternatively, as shown incalculations discussed below, the reference zooming factor can bedetermined by the larger of an object of interest's height or width,relative to the viewing area 130, 150 of the master camera 120 or theslave camera 140.

FIG. 2 is a block diagram illustrating a device-level layout of thevideo surveillance system 100-1. This block diagram is provided as anexample only, and is not limiting. The video surveillance system 100-1can be altered, by, for example, including multiple master cameras 120and/or slave cameras 140, or having devices added, removed, rearranged,and/or combined.

A network 155 enables communication between the components. The network155 here is an Ethernet network, although the network 155 can includeany combination of wired and wireless networks using technologies suchas WiFi, optical, coaxal, and/or satellite. Images from the mastercamera 120 and/or the slave camera 140 are communicated though thenetwork 155 to a recording device 160, such as a videocassette recorder(VCR) or digital video recorder (DVR), that stores image information.Images from the master camera 120 and/or the slave camera 140 are alsocommunicated to a viewing device 170, such as a television or computermonitor, allowing security officers and/or other individuals to monitorthe areas shown in the images.

A computing unit 220 comprises part of the master camera 120 (e.g.,located within a housing of the master camera 120). Alternatively, thecomputing unit 220 can be integrated into another component in the videosurveillance system 100-1, such as the slave camera 140, or can be astand-alone device, such as a computer (not shown). As described in moredetail below, the computing unit 220 gathers information from the mastercamera 120 and the slave camera 140 to calculate a zooming value for theslave camera 140. The computing unit 220 communicates informationthrough the network 155 causing the slave camera 140 to change itszooming factor in accordance with the calculated zooming value.

FIG. 3 is a block diagram illustrating the components of the mastercamera 120, which can be altered to include more or less componentsaccording to desired functionality. The components include camera optics310, typically comprising lenses and other optical components,communicatively coupled with an image capturing unit 330. The imagecapturing unit 330 utilizes charge-coupled device (CCD) and/or othertechnology to convert optical images into electrical information that istransferred to the computing unit 220. Also coupled with the computingunit 220 is a communication interface 340 through which information issent to and from the network 155. The communicated interface 340 can,for example, receive image information from the slave camera 140, andsend zooming information to the slave camera 140.

The computing unit 220 processes image information using variouscomponents. A central processing unit (CPU) or digital-signal processor(DSP) 322 is preferably an intelligent device, e.g., a personal computercentral processing unit (CPU) such as those made by Intel® Corporationor AMD®, a microcontroller, an application specific integrated circuit(ASIC), etc. DSPs, such as the DM6446 made by Texas Instruments®, canalso be used. The CPU/DSP 322 is coupled with a memory 330 that includesrandom access memory (RAM) and read-only memory (ROM). The memory 330 isnon-transitory and preferably stores machine-readable,machine-executable software code 335 containing instructions that areconfigured to, when executed, cause the CPU/DSP 322 to perform variousfunctions described herein. Alternatively, the software 335 may not bedirectly executable by the processor CPU/DSP 322 but is configured tocause the processor CPU/DSP 322, e.g., when compiled and executed, toperform functions described.

The computing unit 220 controls tracking of the object of interest 110,at least in part. The computing unit 220 uses the image information fromthe image capturing unit 330 to detect the object of interest 110 in themaster camera's viewing area 130. The computing unit 220 also receivesimage information from the slave camera 140 from the communicationinterface 340, which is connected to the network 155. With informationfrom both the master camera 120 and slave camera 140, the CPU/DSP 322can control the pan, tilt, and zooming of the slave camera 140 using apan control unit 324, a tilt control unit 326, and a zoom control unit328, respectively. Alternatively, the computing unit 220 can control thezooming of the slave camera 140, as detailed below, with panning andtilt of the slave camera 140 controlled elsewhere.

FIG. 4A is a simplified geometrical representation of a two-camera videosurveillance system, which facilitates the discussion of how a zoomingfactor is derived. Using an orthogonal coordinate system centered on theground below the master camera 120, the world coordinates of the mastercamera 120 and the slave camera 140 are (0, 0, h_(m)) and (x_(s), y_(s),h_(s)), respectively. FIG. 4B shows an image 410 seen by the mastercamera 120, corresponding to the master camera's viewing area 130.Variables shown in FIGS. 4A-4B and used in the calculations below aredefined as follows:

-   -   θ_(m) is the tilt angle of the master camera 120;    -   θ_(s) is the tilt angle of the slave camera 140;    -   φ′_(m) is an angle of the master camera 120 between a point at        the master camera's center point of view, E_(m), (projected on        the xy plane) and a center C of the object of interest;    -   φ_(s) is an angle of the slave camera 140 between a point at the        slave camera's center point of view, E_(s), (projected on the xy        plane) and the center C of the object of interest;    -   α is half of the horizontal field of view of the master camera        120 (in degrees or radians);    -   β is half of the vertical field of view of the master camera 120        (in degrees or radians);    -   I_(w) is the image width (in pixels) of the master camera 120;        and    -   I_(h) is the image height (in pixels) of the master camera 120.

This geometrical setup facilitates defining a relationship to beestablished between world coordinates and image coordinates, which arecoordinates of an image corresponding to the master camera's viewingarea 130. Such image coordinates can be represented in pixels. Forexample, let the center C of the object of interest 110 (not shown) inthe image coordinates be (u,v), with a corresponding world coordinate at(x, y, 0). The point, B(0, v), in the image coordinate then has acorresponding point, B(0,y, 0), in the world coordinate system. As shownin FIG. 4A, angle q is an angle of the master camera 120 between point Band point C, and angle t is an angle of the master camera between pointB and master camera's center point of view E_(m).

Referring to the image coordinates shown in FIG. 4B, a bounding box 420is established for the object of interest 110. The bounding box 420represents a rectangle circumscribing the object of interest 110 asshown in an image corresponding to the master camera's viewing area 130.The dimensions of the bounding box 420, B_(w) by B_(h), are thereforemeasured in pixels, where B_(w) and B_(h) are the corresponding widthand height of the bounding box 420, respectively. The width and heightof the bounding box 420 typically represent a maximum width and amaximum height of the object of interest in image coordinates.

The world coordinate of C projected onto the xy plane can be computed asfollows:

$\begin{matrix}{{x = \frac{h_{m} \cdot {\tan (p)}}{{\sin \left( {\theta_{m} + 1} \right)} \cdot \sqrt{{\tan^{2}(t)} + 1}}},} & (1) \\{{y = \frac{h_{m}}{\tan \left( {\theta_{m} + t} \right)}},} & (2) \\{{z = 0};} & (3)\end{matrix}$

where intermediate variables p and t are calculated as:

$\begin{matrix}{p = {{\tan^{- 1}\left( {\frac{{2 \cdot \tan}\; \alpha}{I_{w}} \cdot u} \right)}\mspace{14mu} {and}}} & (4) \\{t = {{\tan^{- 1}\left( {\frac{{2 \cdot \tan}\; \beta}{I_{h}} \cdot v} \right)}.}} & (5)\end{matrix}$

A pseudo reference zooming factor, M₁, corresponding to the mastercamera 120 when the object 110 is located at the center of the mastercamera's viewing area 130, can be computed as follows:

$\begin{matrix}{M_{1} = {{\min \left( {\frac{I_{w}}{B_{w}},\frac{I_{h}}{B_{h}}} \right)}.}} & (6)\end{matrix}$

Because the object of interest 110 may not be located at the center ofthe master camera's viewing area 130, the actual reference zoomingfactor, M′₁, corresponding to the master camera 120 is:

$\begin{matrix}{{M_{1}^{\prime} = {M_{1} \cdot \frac{\sin \left( {2 \cdot \theta_{m}} \right)}{\sin \left( {2 \cdot \theta_{m}^{\prime}} \right)}}},} & (7)\end{matrix}$

where θ′_(m) is the corresponding tilt angle for zooming factor M′₁.

The zooming factor of the master camera 120 does not change. The zoomingfactor of the master camera 120 is a reference zooming factor used tocalculate a zooming factor, M₂, for the slave camera 140 as follows:

$\begin{matrix}{\begin{matrix}{M_{2} = {M_{1}^{\prime} \cdot \frac{{\overset{\_}{A_{s}C}}/{\cos \left( \theta_{s} \right)}}{{\overset{\_}{A_{m}C}}/{\cos \left( \theta_{m}^{\prime} \right)}}}} \\{{{M_{1}^{\prime} \cdot \frac{\cos \left( \theta_{m}^{\prime} \right)}{\cos \left( \theta_{s} \right)} \cdot \frac{\sqrt{\left( {x - x_{s}} \right)^{2} + \left( {y - y_{s}} \right)^{2} + h_{s}^{2}}}{{h_{m}/\sin}\; \theta_{m}^{\prime}}},}}\end{matrix}{or}} & (8) \\{M_{2} = \frac{M_{1}^{\prime} \cdot {\cos \left( \theta_{m}^{\prime} \right)} \cdot {\sin \left( \theta_{m}^{\prime} \right)} \cdot \sqrt{\left( {x - x_{s}} \right)^{2} + \left( {y - y_{s}} \right)^{2} + h_{s}^{2}}}{{\cos \left( \theta_{s} \right)} \cdot h_{m}}} & (9)\end{matrix}$

The distance of the object of interest 110 to the slave camera 140 canbe computed by:

$\begin{matrix}{{\overset{\_}{A_{s}C}} = {\sqrt{\left( {x - x_{2}} \right)^{2} + \left( {y - y_{s}} \right)^{2} + h_{s}^{2}} = {\frac{h_{s}}{\sin \left( \theta_{s} \right)}.}}} & (10)\end{matrix}$

Therefore, because the tilt angle of the slave camera 140 is known, theformula for the zooming factor for the slave camera 140 can be modifiedinto a simpler form as follows:

$\begin{matrix}\begin{matrix}{M_{2} = {M_{1}^{\prime} \cdot \frac{h_{s} \cdot {\sin \left( {2 \cdot \theta_{m}^{\prime}} \right)}}{h_{m} \cdot {\sin \left( {2 \cdot \theta_{s}} \right)}}}} \\{= {M_{1} \cdot \frac{\sin \left( {2 \cdot \theta_{m}} \right)}{\sin \left( {2 \cdot \theta_{m}^{\prime}} \right)} \cdot \frac{h_{s} \cdot {\sin \left( {2 \cdot \theta_{m}^{\prime}} \right)}}{h_{m} \cdot {\sin \left( {2 \cdot \theta_{s}} \right)}}}} \\{= {M_{1} \cdot {\frac{h_{s} \cdot {\sin \left( {2 \cdot \theta_{m}} \right)}}{h_{m} \cdot {\sin \left( {2 \cdot \theta_{s}} \right)}}.}}}\end{matrix} & (11)\end{matrix}$

Referring to FIG. 5, with further reference to FIGS. 1-4, a process 500of determining a zoom factor for a slave camera 140 in a videosurveillance system utilizing the master camera 120 and the slave camera140 is shown. The process 500 is, however, an example only and notlimiting. The process 500 can be altered, e.g., by having stages added,removed, rearranged, combined, and/or performed concurrently.

At stage 510, first image information from the master camera 120 isreceived. The first image information provides sufficient information toconvey a first zooming factor or similar zooming value relating to afirst image. For example, the image information can include the firstzooming factor, or variables such as the bounding box 420 height B_(H)and width B_(w), and coordinates or other indicators of a location ofthe object of interest 110. Alternatively, the information can includeother information, such as raw image data, from which these or othervariables can be determined. At stage 520, a first zooming valuecorresponding to the first image information is determined using thefirst image information and equation 6.

At stage 530, second image information is received from the slave camera140. Here, the information received is indicative of a tilt angle of theslave camera 140, including the tilt angle itself or sensor readings ormeasurements from which the tilt angle is derived. The tilt anglecorresponds to an image captured by the slave camera 140.

The second image information and the first image information correspondto images captured when the object of interest 110 is at substantiallythe same position. Referring to FIG. 4A, for example, this means theobject of interest 110 is at position C(x, y, 0) while first and secondimages are captured by the master camera 130 and the slave camera 140,respectively. The first and second images may be captured at differenttimes, and the tilt angle of the slave camera 140 preferably changes byno more than a few degrees, if at all, from the time the first image iscaptured to the time the second image is captured. This helps ensure theaccuracy of the calculated zooming factor.

Referring again to FIG. 5, a second zooming value is calculated at stage540. With tilt angles of both the master camera 120 and the slave camera140, as well as a first zooming value, the second zoomingvalue—corresponding to a zooming value of the slave camera 140—can becalculated using geometrical methods, such as from equation 11 above. Atstage 550, zooming information indicative of the second zooming value issent from zoom control unit 328 of the master camera. The zoominginformation can be sent to the slave camera 140 directly or to a deviceelsewhere in the surveillance system 100-1 configured to receive thezooming information and adjust the zooming value of the slave camera 140in accordance with the second zooming value.

Other configurations may be used. For example a single camera can beused instead of a master camera and a slave camera. FIG. 6 is a blockdiagram illustrating a video surveillance system 100-2 utilizing asingle PTZ camera 610 with components similar to those shown in FIG. 3.As with system 100-1 shown in FIG. 2, the system 100-2 is provided as anexample only, and is not limiting. Devices may be added, omitted,combined, or separated. For instance, configurations may providemultiple cameras with computing units 620, and/or one or morestand-alone computing units 620. Additionally, as with the computingunit 220 of system 100-1 shown in FIG. 2, computing unit 620 willinclude the hardware and/or software functionality to perform thefunctions described herein.

With the system 110-1, rather than using a tilt angle and referencezooming factor from a master camera, an initial tilt angle and zoomingfactor of the PTZ camera 610 are used. When the object of interest 110moves to a different distance from the PTZ camera 610 and the PTZcamera's tilt angle is adjusted accordingly, a new zooming factor forthe PTZ camera 610 is calculated.

Because the variables involved in a single-camera system differ fromthose of a system with a master camera 120 and a slave camera 140, themathematics for determining the desired zooming factor is alsodifferent. For instance, referring to the geometrical representation ofa single-camera embodiment shown in FIG. 7, in order to keep the size ofthe object of interest 110 constant with respect to the viewing area ofthe PTZ camera 610, the zooming factor is proportional to the distanceof the camera to the object of interest 110 as follows:

$\begin{matrix}{{M_{2} = {M_{1} \cdot \frac{D_{2}}{D_{1}}}},} & (12)\end{matrix}$

where D₁ and D₂ are first and second distances from the camera 610 tothe object of interest 110, respectively, and where M₁ and M₂ arecorresponding zooming factors for distances D₁ and D₂, respectively.

The PTZ camera 610 has variables defined as follows:

H is the height of the camera;

θ is the tilt angle of the camera; and

D is the distance from camera to the ground where the object of interest110 is located.

The relationship between H, D, and θ is therefore:

$\begin{matrix}{{{\sin (\theta)} = \frac{H}{D}},{or}} & (13) \\{{D = \frac{H}{\sin (\theta)}},} & (14)\end{matrix}$

and the relationship between a first zooming factor, M₁, and a secondzooming factor, M₂, becomes:

$\begin{matrix}{{M_{2} = {M_{1} \cdot \frac{\sin \left( \theta_{1} \right)}{\sin \left( \theta_{2} \right)}}},} & (15)\end{matrix}$

where θ₁ and θ₂ are first and second tilt angles of the PTZ camera 610for distances D₁ and D₂, respectively. Thus, for known zooming factor M₁and tilt angle θ₁ at distance D₁, the zooming factor M₂ can bedetermined if the tilt angle θ₂ is known.

The formulae derived above assume that the object of interest 110 is onthe ground and its height compared with its width or length isnegligible, or the object is very far away from the camera (e.g., θ isvery small). To factor in height, the relationship between the height ofthe object of interest 110 and the height as seen by the PTZ camera 610is determined according to:

S=S ₀·cos(θ),   (16)

where S₀ is the height of the object of interest 110 and S is the heightas seen by the PTZ camera 610. Because cos(θ) is less than 1, S can becomputed the same as the if distance to the object of interest 110 isincreased with a factor of 1/cos(θ).

With this relationship, the zooming factor equation above is modified toyield:

$\begin{matrix}\begin{matrix}{M_{2} = {M_{1} \cdot \frac{D_{2}/{\cos \left( \theta_{2} \right)}}{D_{1}/{\cos \left( \theta_{1} \right)}}}} \\{= {M_{1} \cdot \frac{D_{2} \cdot {\cos \left( \theta_{1} \right)}}{D_{1} \cdot {\cos \left( \theta_{2} \right)}}}} \\{= {M_{1} \cdot {\frac{{\sin \left( \theta_{1} \right)} \cdot {\cos \left( \theta_{1} \right)}}{{\sin \left( \theta_{2} \right)} \cdot {\cos \left( \theta_{2} \right)}}.}}}\end{matrix} & (17)\end{matrix}$

This equation can be simplified as follows:

$\begin{matrix}{M_{2} = {M_{1} \cdot {\frac{\sin \left( {2 \cdot \theta_{1}} \right)}{\sin \left( {2 \cdot \theta_{2}} \right)}.}}} & (18)\end{matrix}$

When compared with equation 15, factoring in the height of the object ofinterest 110 results in multiplying θ₁ and θ₂ by a factor of 2. Thus,the factor of 2 can be removed from equation 18 (resulting in equation15) if the height of the object of interest 110 is ignored. Similarly,with regard to equation 11, the factor of 2 multiplied with θ_(s) andθ_(M) can be removed if the height of the object of interest 110 in thetwo-camera system 100-1 of FIG. 2 is ignored.

Referring to FIG. 8, with further reference to FIGS. 6-7, a process 800of determining a zoom factor for the PTZ camera 610 is shown. Theprocess 800 is, however, an example only and not limiting. The process800 can be altered, e.g., by having stages added, removed, rearranged,combined, and/or performed concurrently.

At stage 810, first image information is received from the PTZ camera610, and at stage 820 a first zooming value and a first tilt angle aredetermined. This includes, for example, receiving the first imageinformation by the computing unit 620 in the PTZ camera 610, fromanother component within the PTZ camera 610 and/or from within thecomputing unit 620. As with the process 500, the first image informationis indicative of a first zooming value and a first tilt angle. At stage810, however, the first image information corresponds to an image of thePTZ camera 610. The first zooming value and the first tilt angle may beexplicitly or implicitly included in the first image information.

The first image information is preferably provided after the PTZ camera610 has been calibrated to the object of interest 110. In other words,the first image information is provided and determined once the PTZcamera 610 has properly tracked the object of interest 110 (e.g.,panned/tilted to ensure the object of interest 110 is in the desiredportion of the viewing area) and adjusted to a desirable zooming factor.For example, the PTZ camera 610 can be configured to pan, tilt, and zoomto help ensure the object of interest 110 at a first location is in thecenter of the viewing area and that it occupies about 80% (or anotherderived amount) of the viewing area. After the object of interest 110moves to a second location, the PTZ camera 610 continues to track theobject of interest 110, adjusting the tilt angle, as appropriate.

At stage 830, second image information is received from the PTZ camera610, and at stage 840, a second tilt angle is determined. Stages 830 and840 are similar to stages 810 and 820, and the second image informationtherefore can include the same type of information as the first imageinformation. This includes explicitly or implicitly conveying the secondtilt angle. At stage 850 equation 18 is used to calculate a secondzooming factor using the first zooming value, first tilt angle, andsecond tilt angle.

At stage 860, zooming information indicative of the second zooming valueis sent. For example, the zooming information can be sent from acomputing unit 220 to another component of the PTZ camera 610 that isconfigured to receive the zooming information and adjust the zoomingvalue of the PTZ camera 610 in accordance with the second zooming value.

The methods, systems, and devices discussed above are examples and notlimiting. Various configurations may omit, substitute, or add variousprocedures or components as appropriate. For instance, featuresdescribed with respect to certain configurations may be combined invarious other configurations. For example, a master camera 120 of FIG. 2can be included in system 100-2 of FIG. 6, allowing the system 100-2 ofFIG. 6 to operate in two modes: a first mode in which the PTZ camera 610operates as a slave camera in a master-slave configuration, and a secondmode in which the PTZ camera 610 provides the functionality described ina single-camera configuration. Different aspects and elements describedabove as being separate or in different configurations may be combined.Moreover, although configurations described herein are in the context ofvideo surveillance systems, the methods, systems, and devices discussedabove applications apply in other contexts where a camera system tracks(or can track) an object of interest, such as sporting events, videoconferences, and motion capture systems, among others.

Specific details are given in the description to provide a thoroughunderstanding of example configurations and implementations. Otherexamples may or may not use these specific details. For example,well-known circuits, processes, algorithms, structures, and techniqueshave been shown without unnecessary detail in order to avoid obscuringthe description.

Operations described above in a sequential process may be performed in adifferent sequence, and operations can be omitted or added to theprocesses described, and/or may be performed concurrently. Furthermore,processes described above may be implemented by hardware, softwareexecuted by a processor, firmware, middleware, microcode, hardwaredescription languages, or any combination thereof. When implemented insoftware, firmware, middleware, or microcode, the program code or codesegments to perform the operations may be stored in a non-transitorycomputer-readable medium such as a storage medium. One or moreprocessors can execute the software to perform the appropriate tasks.

Various modifications, alternative constructions, and equivalents may beused without departing from the spirit of the disclosure. For example,elements described above may be components of a larger system, whereother rules may take precedence over or otherwise modify thedescription. Also, a number of steps may be undertaken before, during,or after the above elements are considered. Accordingly, the abovedescription is not limiting of the disclosure and does not define thebounds of the claims.

Other examples and implementations are within the scope and spirit ofthe disclosure and appended claims. Features implementing functions maybe physically located at various positions, including being distributedsuch that portions of functions are implemented at different physicallocations.

Also, as used herein, including in the claims, “or” as used in a list ofitems prefaced by “at least one of” indicates a disjunctive list suchthat, for example, a list of “at least one of A, B, or C” means A or Bor C or AB or AC or BC or ABC (i.e., A and B and C).

Further, more than one invention may be disclosed.

1. A method for determining a zooming value of an image source, themethod comprising: receiving first image information, from the imagesource, of a first image of an object of interest, wherein the firstimage information corresponds to a first tilt angle of the image source;receiving second image information, from the image source, of a secondimage of the object of interest, wherein the second image information isindicative of a second tilt angle of the image source; determining afirst zooming value corresponding to the first image; calculating asecond zooming value using the first tilt angle, the first zoomingvalue, and the second tilt angle; and sending zooming information,indicative of the second zooming value, to the image source.
 2. Themethod recited in claim 1, further comprising: capturing the first imagewith a first camera of the image source using the first tilt angle whilethe object of interest is at a particular position; and capturing thesecond image with a second camera, separate from the first camera, ofthe image source using the second tilt angle while the object ofinterest is at substantially the particular position.
 3. The methodrecited in claim 2, wherein calculating the second zooming value furtheruses at least one of: a height of the first camera relative to theground, or a height of the second camera relative to the ground.
 4. Themethod recited in claim 2, further comprising controlling tracking ofthe object of interest by the second camera.
 5. The method recited inclaim 2, wherein determining the first zooming value is based, at leastin part, on a size of the object of interest relative to the viewingarea of the first camera.
 6. The method recited in claim 5, whereindetermining the first zooming value is based, at least in part, on asmaller of: a ratio of a height of the viewing area of the first camerato a height of the portion of the viewing area of the first cameraoccupied by the object of interest, and a ratio of a width of theviewing area of the first camera to a width of the portion of theviewing area of the first camera occupied by the object of interest. 7.The method recited in claim 1, wherein the image source comprises acamera and the method further comprises: capturing the first image whilethe object of interest is at a first distance from the camera; andcapturing the second image while the object of interest is at a seconddistance from the camera.
 8. The method recited in claim 7, furthercomprising producing and sending the first image information and thesecond image information from a processor physically located within ahousing of the camera.
 9. The method recited in claim 7, whereindetermining the first zooming value is based, at least in part, on asize of the object of interest relative to a viewing area of the camera.10. The method recited in claim 1, further comprising determining atleast one of the first tilt angle or the second tilt angle.
 11. Anon-transitory machine-readable storage medium comprising instructionsembodied thereon that, when executed by at least one machine, cause theat least one machine to: determine, from first image informationprovided by an image source, a first zooming value corresponding to afirst image of an object of interest wherein the first image informationcorresponds to a first tilt angle of the image source; determine, fromsecond image information provided by the image source, a second tiltangle corresponding to a second image of an object of interest;calculate a second zooming value by using the first tilt angle, thefirst zooming value, and the second tilt angle; and send zoominginformation indicative of the second zooming value toward the imagesource.
 12. The non-transitory machine-readable storage medium recitedin claim 11, wherein the instructions that cause the at least onemachine to calculate the second zooming value cause the at least onemachine to use at least one of: a height of a first camera relative tothe ground, or a height of a second camera relative to the ground. 13.The non-transitory machine-readable storage medium recited in claim 12,wherein the instructions embodied thereon, when executed by the at leastone machine, further cause the at least one machine to control trackingof the object of interest by the second camera.
 14. The non-transitorymachine-readable storage medium recited in claim 12, wherein the firstzooming value is based, at least in part, on a size of the object ofinterest relative to the viewing area of the first camera.
 15. Thenon-transitory machine-readable storage medium recited in claim 11,wherein the first zooming value is based, at least in part, on a size ofthe object of interest relative to a viewing area of a camera.
 16. Thenon-transitory machine-readable storage medium recited in claim 11,wherein the instructions embodied thereon, when executed by the at leastone machine, further cause the at least one machine to determine atleast one of the first tilt angle or the second tilt angle.
 17. A systemcomprising: a first camera having a first tilt angle and a viewing area,the first tilt angle being fixed, wherein the first camera is configuredto: capture a first image of an object of interest while the object ofinterest is at a particular position; and output data regarding thefirst image; a second camera having an adjustable tilt angle enablingthe second camera to track the object of interest, wherein the secondcamera is configured to: capture, using a second tilt angle, a secondimage of the object of interest while the object of interest is atsubstantially the particular position; and output data regarding thesecond tilt angle; and a processor communicatively coupled with thefirst camera and the second camera, wherein the processor is configuredto: determine a first zooming value for the first camera; calculate asecond zooming value using the first tilt angle, the first zoomingvalue, and the second tilt angle; and send information to cause azooming value of the second camera to change according to the secondzooming value.
 18. The system recited in claim 17, wherein the processoris configured to determine the first zooming value based, at least inpart, on a portion of the viewing area of the first camera occupied bythe object of interest.
 19. The system recited in claim 18, wherein theprocessor is configured to determine the first zooming value based, atleast in part, on a smaller of: a ratio of a height of the viewing areaof the first camera to a height of the portion of the viewing area ofthe first camera occupied by the object of interest, and a ratio of awidth of the viewing area of the first camera to a width of the portionof the viewing area of the first camera occupied by the object ofinterest.
 20. The system recited in claim 17, wherein the processor islocated within a housing of the first camera or the second camera. 21.The system recited in claim 17, wherein the processor is furtherconfigured to control the tracking of the object of interest by thesecond camera.
 22. The system recited in claim 17, wherein the processoris configured to calculate the second zooming value using at least oneof: a height of the first camera relative to the ground, or a height ofthe second camera relative to the ground.
 23. A system comprising: acamera having an adjustable tilt angle and being configured to track anobject of interest, the camera being further configured to: capture afirst image of the object of interest, with the camera set to a firsttilt angle and a first zooming value; change a tilt angle of the camerafrom the first tilt angle to a second tilt angle in response to a changein the distance of the object of interest to the camera; capture asecond image of the object of interest, with the camera set to thesecond tilt angle; and provide indications of the first tilt angle, thefirst zooming value, and the second tilt angle; and a processor,communicatively coupled to the camera, configured to calculate a secondzooming value using the first tilt angle, the first zooming value, andthe second tilt angle; and send information to the camera to cause thezooming value of the camera to change from the first zooming value tothe second zooming value.
 24. The system recited in claim 23, whereinthe first zooming value is based, at least in part, on a portion of theviewing area of the first camera occupied by the object of interest. 25.The system recited in claim 23, wherein the processor is located withina housing of the camera.
 26. The system recited in claim 23, wherein theprocessor is further configured to control the tracking of the object ofinterest by the camera.